package com.jy.rhin.model;


import com.jy.rhin.infra.cda.EDataElement;
import com.jy.rhin.infra.cda.XPath;
import com.jy.rhin.infra.cda.XValid;
import com.jy.rhin.model.body.gaoxueysf.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.jy.rhin.model.body.tangniaobsf.ShengHuoFS;
import com.jy.rhin.model.body.tangniaobsf.ShengMingTZ;
import com.jy.rhin.model.body.tangniaobsf.ShiYanSJC;
import com.jy.rhin.model.body.tangniaobsf.YongYao;
import com.jy.rhin.model.body.tangniaobsf.ZhiLiaoJH;
import java.util.List;

@Data
@EqualsAndHashCode(callSuper = false)
public class TangNiaoBSF extends ClinicalDocumentData {

    //文档唯一id
    @XPath(path = "/id/@extension"
            , xValid = @XValid(type = "dataElement", dataElement = EDataElement.DE01_00_008_00))
    String id;
    //随访事件
    @XPath(path = "/component/structuredBody/component/section/code[@displayName='随访事件']/..")
    SuiFangSJ suiFangSJ;
    //症状列表
    @XPath(path = "/component/structuredBody/component/section/code[@code='11450-4']/.."
            , listItemPath = "/entry/organizer/component/observation/code[@code='DE04.01.116.00']", listItemBackLevel = 3)
    List<ZhengZhuang> zhengZhuang;
    //生命体征
    @XPath(path = "/component/structuredBody/component/section/code[@code='8716-3']/..")
    ShengMingTZ shengMingTZ;
    //生活方式
    @XPath(path = "/component/structuredBody/component/section/code[@displayName='生活方式']/..")
    ShengHuoFS shengHuoFS;
    //治疗计划
    @XPath(path = "/component/structuredBody/component/section/code[@code='18776-5']/..")
    ZhiLiaoJH zhiLiaoJH;
    //实验室检查
    @XPath(path = "/component/structuredBody/component/section/code[@code='30954-2']/..")
    ShiYanSJC shiYanSJC;
    //用药
    @XPath(path = "/component/structuredBody/component/section/code[@code='10160-0']/..")
    List<YongYao> yongYao;
    //健康评估
    @XPath(path = "/component/structuredBody/component/section/code[@code='51848-0']/..")
    JianKangPG jianKangPG;
    //转诊建议
    @XPath(path = "/component/structuredBody/component/section/code[@code='18776-1']/..")
    ZhuanZhenJY zhuanZhenJY;
    //下次随访安排
    @XPath(path = "/component/structuredBody/component/section/code[@displayName='下次随访安排']/..")
    XiaCiSFAP xiaCiSFAP;

}
